package com.sx.service.system;

import com.sx.basic.ResponseEntity;
import com.sx.dto.AdminInfo;
import com.sx.entity.system.AdminEntity;
import com.sx.basic.IBasicService;

/**
 * @author AdinZ
 * @date 2020/11/7 18:23
 */
public interface IAdminService extends IBasicService<AdminEntity,Long> {

    /**
     * 登陆
     * @param username 账号
     * @param password 密码
     * @return
     */
    ResponseEntity<String> login(String username,String password);

    /***
     * 退出登陆
     * @param token
     * @return
     */
    ResponseEntity logout(String token);

    /**
     * 根据token获取基本资料
     * @param token
     * @return
     */
    ResponseEntity<AdminInfo> getInfo(String token);

    /**
     * 分页查询管理员列表
     * @param page
     * @return
     */
    ResponseEntity findPage(int page,int size);

    /**
     * 添加修改管理员
     * @param entity
     * @return
     */
    ResponseEntity putAdmin(AdminEntity entity);

    /**
     * 删除管理员
     * @param ids
     * @return
     */
    ResponseEntity deleteAdmin(Long[] ids);

    boolean isAuthority(String token,String method, String requestURI);


    ResponseEntity updatePwd(String token, String oldPassword, String password);
    boolean updatePwd(long uid,String oldPassword, String password);
}
